package com.batdream.message.service;

import com.batdream.message.pojo.ChatMsg;
import com.batdream.message.pojo.ChatMsgByNetty;

import java.util.Collection;
import java.util.List;

/**
 * @author Wang Chen Peng
 * @date 2018/12/30
 * describe:
 */
public interface ChatService {
    /**
     * 保存消息到数据库
     * @param chatMsg
     * @return
     */
    String saveMsg(ChatMsgByNetty chatMsg);

    /**
     * 批量根据id去更改签收状态为已签收
     * @param idsList
     */
    void updateMsgToSigend(List<String> idsList);

    /**
     * 根据用户id去获取没有签收过的消息
     * @param myUserId 用户id
     * @return 消息list
     */
    List<ChatMsg> getNoneReadMsgByUserId(String myUserId);

    /**
     * 根据用户聊天记录去查询未读消息 并取发送时间最晚的作为聊天快照
     * @param myUserId 用户id
     * @return 消息list
     */
    Collection<ChatMsg> getNoneReadChatSnapshot(String myUserId);
}
